package Marca;

import java.util.List;
import Util.Conexao;

import org.hibernate.Criteria;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;

public class MarcaDao {

	Conexao cx = new Conexao();
	
	public void AddMarca (Marca mar)
	{
		cx.OpenConection();
		cx.getSessao().save(mar);
		cx.CloseConection();
	}
	public void RemoveMarca (Marca mar)
	{
		cx.OpenConection();
		cx.getSessao().delete(mar);
		cx.CloseConection();
	}
	public void UpdateMarca (Marca mar)
	{
		cx.OpenConection();
		cx.getSessao().update(mar);
		cx.CloseConection();
	}
	public List <Marca> listaMarca ()
	{
		Criteria listMarca = cx.getTransacao().createCriteria(Marca.class);
		listMarca.addOrder(Order.asc("dscMarca"));
		return listMarca.list();
	}
	public List <Marca> listaMarcaDSC (String dsc)
	{ 
		Criteria listMarc = cx.getTransacao().createCriteria(Marca.class);
		listMarc.add(Restrictions.like("dscMarca", "%" + dsc + "%"));
		listMarc.addOrder(Order.asc("dscMarca"));
		return listMarc.list();
	}
	public Marca listaMarcaCod (int cod)
	{
		Criteria listMarc = cx.getTransacao().createCriteria(Marca.class);
		listMarc.add(Restrictions.eq("codMarca", cod));
		listMarc.addOrder(Order.asc("dscMarca"));
		return (Marca) listMarc.uniqueResult();
		
	}
}
